﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Collections.ObjectModel;

namespace BluetoothMachine.Models
{
    public class ParameterConfigurationModel : INotifyPropertyChanged
    {
        /// <summary>
        /// 取值次数
        /// </summary>
        public int MaNumber { get; set; }
        /// <summary>
        /// 载波精度上限
        /// </summary>
        public double CarrierAccuracyUp { get; set; }
        public double CarrierAccuracyDown { get; set; }

        /// <summary>
        /// 红外强度上限
        /// </summary>
        public double InfraredIntensityUp { get; set; }
        public double InfraredIntensityDown { get; set; }

        /// <summary>
        /// 动态电流上限
        /// </summary>
        public double DynamicCurrentUp { get; set; }
        public double DynamicCurrentDown { get; set; }

        /// <summary>
        /// 静态电流
        /// </summary>
        public double QuiescentCurrentUp { get; set; }
        public double QuiescentCurrentDown { get; set; }

        #region Z轴抬升位置
        public double ZReturnCoordinateOne { get; set; }
        public double ZReturnCoordinateTwo { get; set; }
        public double ZReturnCoordinateThree { get; set; }
        public double ZReturnCoordinateFour { get; set; }
        public double ZReturnCoordinateFive { get; set; }
        #endregion

        /// <summary>
        /// 扫描间隔时间
        /// </summary>
        public int ScanInterval { get; set; }
        /// <summary>
        /// 配对按键时间
        /// </summary>
        public int TimePairingButton { get; set; }
        /// <summary>
        /// 波形容错率
        /// </summary>
        public int FaultTolerance { get; set; }
        /// <summary>
        /// 最后按键等待时间
        /// </summary>
        public int TimeLastKeyWait { get; set; }
        /// <summary>
        /// 按键时间
        /// </summary>
        public int TimeKey { get; set; }
        /// <summary>
        /// 静态电流时间
        /// </summary>
        public int TimeQuiescentCurrent { get; set; }
        /// <summary>
        /// 动态电流时间
        /// </summary>
        public int TimeDynamicCurrent { get; set; }
        /// <summary>
        /// 等待文件检测时间
        /// </summary>
        public int TimeWaitFile { get; set; }
        /// <summary>
        /// 语音测试时间
        /// </summary>
        public int TimeVoiceTest { get; set; }
        /// <summary>
        /// 配对等待时间
        /// </summary>
        public int TimeWaitAfterPairing { get; set; }
        /// <summary>
        /// 按键测试语音等待时间
        /// </summary>
        public int TimeButtonTestVoiceWaiting { get; set; }
        /// <summary>
        /// 整体判定次数
        /// </summary>
        public int OverallJudgment { get; set; }
        /// <summary>
        /// LED检测时间
        /// </summary>
        public int TimeLEDTest { get; set; }
        /// <summary>
        /// 测试项
        /// </summary>
        public string TestItems { get; set; }
        /// <summary>
        /// 产品功能
        /// </summary>
        public string ProductFeatures { get; set; }
        /// <summary>
        /// 产品型号
        /// </summary>
        public string ProductModel { get; set; }
        /// <summary>
        /// 产品型号列表
        /// </summary>
        public ObservableCollection<string> ProductModelList { get; set; }

        /// <summary>
        /// 窗体界面
        /// </summary>
        public string Title { get; set; }

        public int XSpeed { get; set; }
        public int YSpeed { get; set; }
        public int ZSpeed { get; set; }
        public string SerialPort { get; set; }

        public event PropertyChangedEventHandler PropertyChanged;
    }
}
